A. Field of the Invention
The present invention relates to a power controller for use with computer equipment which controller non-manually and selectively controls power to various computer equipment components from a central location. More particularly, it relates to a power controller which not only possesses this non-manual capability for remotely powering on or off any one or more components of a system or systems but which also is capable of selectively reporting via the system interface, the ON/OFF status of referenced controlled equipment. Further, it relates to a power controller which optimizes a system's ability to conserve electrical energy by turning off equipment which is not being presently used and turning on only that equipment which is presently needed.
B. Prior Art
In the past, the remote control of power to computer equipment has been limited to powering on and off all of the computer equipment controlled by a given controlling element which implemented power control either via a change in its own power status or via manual control.
One known prior art system is disclosed in U.S. Pat. No. 4,312,035, issued on January 19, 1982 to Richard E. Greene, and entitled "Apparatus for Controlling Electrical Power in a Data Processing System". In that patent, there is disclosed, an apparatus for manually controlling electrical power in a data processing system having one or more central processor units and a plurality of peripheral units, including manual switching circuitry for selectively coupling a voltage signal to each peripheral unit to cause power to be supplied thereto, and also metering means for measuring the amount of time the voltage signal is provided to each separate peripheral whereby the supply of power to any one of the peripheral units may be centrally controlled and measured. Also included is a circuit for sequentially connecting the voltage signal to the peripheral units.
Thus, the illustrated embodiment of that earlier manual system comprises:
(a) A centrally located panel of manual switches, PA0 (b) A power interface between each switch and each entity (e.g., CPU peripheral unit) whose power is being remotely controlled, PA0 (c) A source of power to drive interfaces and associated relays, PA0 (d) A power interface implied at controlled entity, such interface having the capability to accept power control signals, PA0 (e) A master switch, PA0 (f) An enabling switch which causes the power control function (i.e., on or off) indicated by each recently touched switch to take place, and PA0 (g) A timing mechanism which measures the amount of time elapsed since powering-on an entity was initiated. PA0 (a) Processor complexes PA0 (b) Memory PA0 (c) I/O complexes PA0 (d) Peripheral subsystems PA0 Enabled Interface PA0 (a) The set of components supports an executive or host software. PA0 (b) Interfaces between the components are enabled. PA0 (c) Any component with interfaces enabled to other components in the application is considered a part of this application. A mainframe component not in any particular application is said to be offline. A mainframe component cannot be in two applications simultaneously. A subsystem is in a particular application if it has an interface enabled to a channel of an Input/Output processor in this application. PA0 (a) the peripheral subsystem's interfaces are enabled only to Input/Output channel(s) in that application; PA0 (b) the peripheral subsystems interfaces to other Input/Output channel(s) in other applications are prevented from being enabled. PA0 (1) interface(s) to command source(s); PA0 (2) power control interfaces to units; PA0 (3) internal logic to accomodate the selective automatic signals to the power control interface; and PA0 (4) internal logic to return signals, indicative of the status of the controlled units, to the command source.
Thus, it is readily seen that this earlier system is a manual system, whereas the present system is a much more sophisticated non-manual selective power control system that is also capable of providing power status indications of the selected controlled components to a command source.
Before proceeding with this description, it is important that certain terms are clearly understood as used in this application, the following prior art definitions are hereinafter set forth:
System
A system is a set of components with interfaces between the components connected, i.e., the hardware means of communication between the components exists. Additionally, this set of components will at least support an executive or host software and consists of the following:
The interface between two components is enabled whenever the transfer of data and control information between the components is not prohibited by component or interface hardware, or by electrical isolation. One component is considered accessible to another component if the interface between them is enabled.
Partitioning
The process of enabling and disabling component interfaces.
Application
An application is all or a subset of a systems components where:
Shared Peripheral Subsystem
A peripheral subsystem is shared if its control unit(s) has (have) interfaces enabled to different Input/Output complexes in different applications of the same or different systems.
Exclusive Use
An application is said to have exclusive use of a pheripheral subsystem when:
Further, many peripheral subsystem control units currently being sold have a remote/local power capability. When the unit is in "local" mode, it is powered on/off at the unit. When the unit is in "remote" mode, it powers itself on/off as a result of signal levels generated by a separate controlling element. These signal levels are sent to the control unit via a standard power control interface and protocol such as that specified in the Federal Information Processing Standards (FIPS) Publication number 61, hereinafter referred to as FIPS-61.
It is presently a basic requirement that all control units sold to the government have a remote power control capability, with the standard protocol and power control interface as specified in FIPS-61. All existing control units considered "standardized" have this capability. Further, all new control units are being designed with this capability.
To further elaborate on this FIPS-61 standard, it proposes that a control unit must have a particular power control interface to the system to which the unit's data path(s) is (are) connected. Additionally, if the " . . . unit is shared between systems, then multiple power control interfaces are required (on the unit, one for each system." Thus, "unit power is brought up when the first system powers up and is dropped when the last system drops power . . . . " The term system as used in FIPS-61 appears to have the same meaning as application, defined above. However, certain systems can have more than one application, and an Input/Output Processor (IOP) is not always necessarily in the same application. Thus, the sources of power control to subsystems must be associated with IOP's rather than applications. More specifically, the IOP, or some entity uniquely associated with the IOP, must act as the "system" in the FIPS-61 sense.
The remote control of subsystem power is optional. Additionally, the large number of FIPS-61 interfaces often required under worst case conditions precludes full power within each IOP. Thus, a module or unit external to the IOP, but uniquely associated with the IOP, is required to realize adequate subsystem power control. The function of the present unit, herein called a Subsystem Power Controller (SPC), is to use FIPS-61 protocol and power control interfaces to power on/off all or a subset of the subsystems (the control units control device power) associated with a particular IOP.
When powering up subsystems, the process must be carried out in a sequential manner, i.e., two or more subsystems cannot be powering up at the same time. The control unit and devices connected to it are considered powered up when the SPC receives a FIPS-61 "power complete" signal from the control unit. Previously established with a 30 second time limit for this to occur. If this time limit was exceeded, the course of action was dependent on the SPC design. The SPC either ceased operation or continued powering on other subsystems. In both cases the error was reported; however, depending on SPC design, it was reported that either a particular subsystem did not power on, or that one or more subsystems of a specific group did not power on.
As set forth in publication (FIPS-61) the controlling element can control the power status of several controlled elements, e.g., control units. Both the controlling element and the controlled element have nominal power active at all times; this power is used only for the control of AC or DC power to the unit.
The FIPS-61 publication also states that when the controlling element activates certain signals at the power control interface to the unit, the unit will power itself on and sequentially power on any units controlled by it (e.g., the devices associated with that control unit). When the unit has completed its power-on sequence, it will activate a signal at the power control interface; this signal indicates to the controlling element that the power on operation is complete.
Conversely, the FIPS-61 standard provides that when the controlling element deactivates certain signals at the power control interface to the unit, the unit will power itself off and also power off any units controlled by it. The unit will then deactivate certain signals at the power control interface; this deactivation is an indication to the controlling element that the unit has powered itself off.
Finally, the FIPS-61 standard allows several controlling elements to control the power of a single unit. The unit will power itself on when the first controlling element activates the power-on signals; it will power itself off when all of the controlling elements have deactivated the appropriate signals.
The control of power is not limited to controlling subsystem power. Instead, any hierarchy of power control can be established, e.g., processor complex to I/O complex to subsystem. However, in the past, the control of power has been limited in the following sense: the controlling element caused all of the units it controlled to power off or to sequentially power on. Also, as described in the above reference U.S. Pat. No. 4,312,035, while selective control itself was known, such control was manual. Generally, the proposed implementation disclosed herein causes the controlling element itself to be powered on or off as it respectively causes the controlled elements associated therewith to power on or off.
As noted previously, very often a single component or a set of components are not used for extended periods of time such as for an entire production period or at least for a large portion of a production period. For example, a peripheral subsystem or a particular peripheral device may be used solely for a certain type of job which is active for only a portion of a production period. Alternatively, a multi-processor system may run as a single processor system during evenings and weekends.
It is therefore the purpose of this invention to introduce a new concept of non-manual, selective, remote power control. The controller proposed is able to selectively power off those components which will not be used for an extended period of time and to power them on when they are needed. The net result is substantial electrical energy conservation that can be implemented from a central location.